1. Field of the Invention
This invention generally relates to the field of data communication systems. More particularly, the invention presents a novel method and apparatus for dynamically classifying and supporting network traffic, based on traffic characteristics. The scheme also provides support for accurate classification of persistent TCP traffic streams.
2. Description of Related Art and General Background
The unprecedented growth of the Internet has not only increased the amount of traffic that communication networks must support, it has also transformed the nature of network traffic. The Internet was once relegated to handling Internet Protocol (IP)-based transmissions in the form of Telnet, e-mail, and File Transfer Protocol (FTP) traffic originating from wired LAN/WAN networks. Since then, the Internet has evolved into a global information infrastructure capable of accommodating a wide variety of applications and platforms.
Recent efforts have focused on the research and development of a Wireless Internet, capable of providing users with ubiquitous Internet access over wireless communication channels. Such efforts include, for example, developing standards for 3rd generation wireless networks (3G) to facilitate Wireless Internet services. These services may accommodate IP-based applications over wireless media and would support applications as diverse as e-mail, web browsing, Voice-over-IP (VoIP), and audio/video-based applications.
FIG. 1A depicts a simplified block diagram of wireless communications network 100, capable of supporting Wireless Internet services. During reverse link transmissions, a mobile station (MS) 102 wirelessly communicates with a Wireless Access Network (WAN) 104 to transmit radio frames conveying IP-based traffic destined for application server 110. WAN 104 comprises, inter alia, a base station transceiver system (BTS) 104A, a base station (BS) 104B, and a network routing device 104C. BTS 104A receives the radio frames and routes them to BS 104B for processing, including converting the frames into IP packet data and applying radio resource management (RRM) functionality. BS 104B then forwards the IP packet data to network routing device 104C, which transmits the packets to application server 110 via a communications network 108, such as, for example, the Public Switched Telephone Network (PSTN) or the Internet.
The use of IP-based applications having real-time interactive requirements coupled with the relatively limited bandwidth capacity of wireless networks, precipitates the need to differentiate between the different traffic streams generated by these applications. For example, BS 104B and routing device 104C may need to apply delay and loss differentiation between the different packets transmitted from the wired network destined for MS 102. As such, BS 104B and routing device 104C may employ a classification mechanism 104D configured to classify certain types of traffic into a set of coarse traffic classes based on application requirements. The RRM functionality of BS 104B may then apply differentiated treatment to the different traffic classes.
One type of traffic generally found in IP-based networks is Transfer Control Protocol (TCP) traffic. As is well known, TCP is a connection-oriented protocol, which guarantees the delivery and sequential order of the transmitted data. Some classification schemes classify TCP traffic based on Layer-4 Port Numbers. Although relatively simple to implement, such classification may be easily deceived by users manipulating port numbers to achieve higher levels of priority for applications. Moreover, the use of port numbers in applications, although well-known, are not mandatory, thereby comprising the efficacy of the Layer-4 classification schemes. In addition, many networks employ Internet Protocol Security (IPSec) techniques, which provide for the secure exchange of packets, but do so at the expense of encrypting information above Layer-3 (Network Layer), thus rendering Layer-4 classification futile.
Other classification schemes classify TCP traffic based on Layer-7 (Application Layer) content. Such classification schemes exploit the payload information resident in the data packet to better identify the type of application associated with the traffic and overcomes the limitations of Layer-4 classification schemes noted above. However, Layer-7 classification schemes require a larger, more robust set of rules to operate effectively and is still subject to the classification barriers imposed by IPSec techniques.
Recent efforts, as described in Chapman et al., Automatic Quality of Service in IP Networks, PROC. CANADIAN CONF. ON BROADBAND RESEARCH, Ottawa, Canada (April 1997, pp. 184-189), have investigated the use dynamic stream classification schemes, which classifies streams based on traffic characteristics Dynamic stream classification schemes examine certain stream characteristics, such as, for example, transmitted packet counts and inter-arrival times, to determine the class associated with the traffic stream. The set of rules associated with dynamic stream classification schemes are, therefore, proportional to the number of classes in the classification scheme. As such, the rule set maintained by these schemes are smaller than the Layer-7 classification schemes. Moreover, because, dynamic stream classification schemes examine traffic stream behavior, such schemes may overcome the classification barriers imposed by IPSec techniques.
With this said, it is important to note that for some new applications, dynamic classification schemes may prove deficient. Consider, for example, HyperText Transfer Protocol (HTTP) 1.1, a newer protocol used by the World Wide Web to effect interactive transfers. HTTP 1.1 defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. One of the main features of HTTP 1.1 is the ability to support persistent TCP connections. Persistent TCP connections allow for the transfer of multiple transactions using a single TCP connection. Allowing multiple transactions over a single connection results in managing fewer connections, which enhances system performance. However, applying dynamic classification schemes to persistent TCP connections may result in classifying all transactions within the connections, irrespective of their characteristics, in the same manner, thereby compromising the efficacy and accuracy of the differentiated treatment of network traffic.
The present invention addresses the need identified above by providing a method and apparatus capable of dynamically and accurately classifying network traffic based on traffic characteristics.
Methods and apparatuses consistent with the principles of the present invention, as embodied and broadly described herein, include defining a first class to classify TCP data streams requiring interactive data transactions and a second class to classify TCP data streams requiring burst data transactions. The method establishes a rule set containing rules to define transitions between the defined classes and initializes an incoming TCP data stream as pertaining to one of the defined classes. Attributes of the TCP data stream are detected and, based on the detected attributes and the rules, the method dynamically classifies the TCP data stream into one of the defined classes. The method further includes forcing the classified TCP data stream to transition back to the initialized class in response to detecting that a data transaction has terminated or commenced.
By directing the classification of a TCP data stream (e.g., forcing the TCP classification back to the initialized class) based on detecting the termination or commencement of a data transaction, the present invention accurately classifies network traffic. Such classification is achieved regardless of whether the TCP data stream contains a single data transaction or a plurality of data transactions.